package com.yifushidai.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.*;
import java.util.Date;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table(name = "tb_band_lock")
@ApiModel(value = "联网设备")
public class ApiUniqueMac {
    @ApiModelProperty(value = "自动编号")
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @ApiModelProperty(value = "已废除")
    @Column(name = "lock_id")
    private Long lockId;

    /**
     * 联网设备mac
     */
    @ApiModelProperty(value = "联网设备mac")
    private String mac;

    /**
     * 联网设备在线状态，0：离线，1：正常（在线）
     */
    @ApiModelProperty(value = "联网设备在线状态，0：离线，1：正常（在线）")
    private Integer ls;

    /**
     * 联网盒类型，A1：身份证读卡器，A2：公寓版联网盒
     */
    @ApiModelProperty(value = "联网盒类型，A1：身份证读卡器，A2：公寓版联网盒")
    @Column(name = "unique_type")
    private String uniqueType;

    /**
     * 门锁mac
     */
    @ApiModelProperty(value = "门锁mac")
    @Column(name = "lock_mac")
    private String lockMac;

    /**
     * 门锁维修状态，0：维护中，1：正常
     */
    @ApiModelProperty(value = "门锁维修状态，0：维护中，1：正常")
    private Integer lbs;

    /**
     * 门锁电量状态，0：电量低，1：正常
     */
    @ApiModelProperty(value = "门锁电量状态，0：电量低，1：正常")
    private Integer les;

    /**
     * 插卡设备mac
     */
    @ApiModelProperty(value = "插卡设备mac")
    @Column(name = "card_mac")
    private String cardMac;

    /**
     * 插卡设备电量状态，0：电量低，1：正常
     */
    @ApiModelProperty(value = "插卡设备电量状态，0：电量低，1：正常")
    private Integer cales;

    /**
     * 控电设备mac
     */
    @ApiModelProperty(value = "控电设备mac")
    @Column(name = "power_mac")
    private String powerMac;

    /**
     * 控电设备在线状态，0：离线，1：正常（在线）
     */
    @ApiModelProperty(value = "控电设备在线状态，0：离线，1：正常（在线）")
    @Column(name = "power_status")
    private Integer powerStatus;

    /**
     * 延时断电（单位：分钟）
     */
    @ApiModelProperty(value = "延时断电（单位：分钟）")
    @Column(name = "power_of_delay")
    private Integer powerOfDelay;

    /**
     * 手机号
     */
    @ApiModelProperty(value = "手机号")
    private String mobile;

    /**
     * 备用手机号
     */
    @ApiModelProperty(value = "备用手机号")
    private String mobile2;

    /**
     * 蓝牙信息
     */
    @ApiModelProperty(value = "蓝牙信息")
    private String bluetooth;

    /**
     * 设备别名
     */
    @ApiModelProperty(value = "设备别名")
    private String alias;

    /**
     * 设备地址
     */
    @ApiModelProperty(value = "设备地址")
    private String addr;

    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度")
    private Double lat;

    /**
     * 经度
     */
    @ApiModelProperty(value = "经度")
    private Double lng;

    /**
     * 设备头像
     */
    @ApiModelProperty(value = "设备头像")
    private String img;

    /**
     * 电费单价（元）
     */
    @ApiModelProperty(value = "电费单价（元）")
    private Double eprice;

    /**
     * 家电功率（千瓦）
     */
    @ApiModelProperty(value = "联网设备mac")
    private Double pow;

    /**
     * 总计节电量（小时）
     */
    @ApiModelProperty(value = "总计节电量（小时）")
    private Double savetotal;

    /**
     * 今日节电量（小时）
     */
    @ApiModelProperty(value = "今日节电量（小时）")
    private Double savetoday;

    /**
     * 绑定时间
     */
    @ApiModelProperty(value = "绑定时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date bandtime;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    @Column(name = "update_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;

    /**
     * 初始化标记
     */
    @ApiModelProperty(value = "初始化标记")
    @Column(name = "init_flag")
    private Integer initFlag;
}